Virtualization is a widely-used technology with many advantages. One physical machine can host many different virtual machines, allowing users access to several operating systems at once. Virtual machines can be effectively sandboxed, preventing errors from affecting the rest of the system. Virtual memory systems make complicated remote storage schemes easier to understand. Virtual machines may also facilitate the efficient use of underlying physical resources and/or facilitate the efficient reconfiguration of computing resources with minimal disruption. With the growing popularity of cloud computing, even more applications are making use of some kind of virtualization.
Unfortunately, some of the very features that make virtualization an effective technique may also carry drawbacks. Because guest systems within virtual machines do not have direct access to physical devices, these physical devices may be misrepresented to the guest system. Inaccurate information about physical devices may lead to guest systems making incorrect decisions, causing otherwise avoidable errors and/or inefficiencies. Accordingly, the instant disclosure identifies and addresses a need for additional and improved systems and methods for sending information to guest systems within virtual machines.